|
Detekce kompletnosti instrukční sady pro generování univerzálního překladače jazyka C
Nagy, Michal ; Dolíhal, Luděk (oponent) ; Hruška, Tomáš (vedoucí práce)
Práce se zabývá problematikou detekce kompletnosti popisu instrukční sady mikroprocesoru pro překladač LLVM, neboli schopností překladače vygenerovat cílový program pro každý validní zdrojový program v příslušném vyšším programovacím jazyce. Na základech teorie regulárních stromových gramatik a několika vědeckých prací, které se touto problematikou též zabývají, je navržen a implementován formální prostředek pro ověření inkluze dvou gramatik. Dále je navržen způsob automatické extrakce obou gramatik z popisu instrukční sady, v důsledku čehož je tento prostředek možné použít pro ověření kompletnosti výběru instrukcí. V kombinaci s ověřením kompletnosti tzv. procesu legalizace překladače LLVM, který výběr instrukcí předchází, by mělo být proveditelné ověření kompletnosti většiny části překladače závislých na popisu cílové architektury.
|
|
Interaktivní interpret jazyka C
Blažek, Martin ; Peringer, Petr (oponent) ; Martinek, David (vedoucí práce)
Diplomová práce se zabývá implementací interaktivního interpretu jazyka C se syntaxí odpovídající normě ISO C99. Důraz je kladen na podporu výuky jazyka C a rychlé prototypování algoritmů. Aplikace umožňuje vytvářet programy a provádět experimenty s jazykovými konstrukcemi bez nutnosti kompilace. Uživatelské rozhraní plní funkci editoru a zároveň jednoduchého debuggeru. Pro tvorbu interpretu je použito vývojové prostředí ANTLRWorks. Je kompletně napsáno v jazyce Java využívající knihovní funkce nástroje ANTLR v3.
|
|
Interaktivní interpret jazyka C
Blažek, Martin ; Peringer, Petr (oponent) ; Martinek, David (vedoucí práce)
Diplomová práce se zabývá implementací interaktivního interpretu jazyka C se syntaxí odpovídající normě ISO C99. Důraz je kladen na podporu výuky jazyka C a rychlé prototypování algoritmů. Aplikace umožňuje vytvářet programy a provádět experimenty s jazykovými konstrukcemi bez nutnosti kompilace. Uživatelské rozhraní plní funkci editoru a zároveň jednoduchého debuggeru. Pro tvorbu interpretu je použito vývojové prostředí ANTLRWorks. Je kompletně napsáno v jazyce Java využívající knihovní funkce nástroje ANTLR v3.
|
|
Detekce kompletnosti instrukční sady pro generování univerzálního překladače jazyka C
Nagy, Michal ; Dolíhal, Luděk (oponent) ; Hruška, Tomáš (vedoucí práce)
Práce se zabývá problematikou detekce kompletnosti popisu instrukční sady mikroprocesoru pro překladač LLVM, neboli schopností překladače vygenerovat cílový program pro každý validní zdrojový program v příslušném vyšším programovacím jazyce. Na základech teorie regulárních stromových gramatik a několika vědeckých prací, které se touto problematikou též zabývají, je navržen a implementován formální prostředek pro ověření inkluze dvou gramatik. Dále je navržen způsob automatické extrakce obou gramatik z popisu instrukční sady, v důsledku čehož je tento prostředek možné použít pro ověření kompletnosti výběru instrukcí. V kombinaci s ověřením kompletnosti tzv. procesu legalizace překladače LLVM, který výběr instrukcí předchází, by mělo být proveditelné ověření kompletnosti většiny části překladače závislých na popisu cílové architektury.
|